socketio
Class Socket

java.lang.Object
  extended by socketio.Socket

public class Socket
extends java.lang.Object

Ein-/Ausgabe über Sockets.
Ein Objekt der Klasse Socket kapselt eine Socket-Schnittstelle. Festlegung der Socket-Parameter kann nur bei der Objekt-Erzeugung vorgenommen werden.

Das Socket-Objekt kann sich mit einem Server-Socket. Ob die Verbindungsanforderung erfolgreich war, kann durch den Rückgabewert der Methode connect() festgestellt werden (true, wenn die Verbindung akzeptiert wurde).

Das Socket-Objekt gestattet im Zustand "verbunden" das Lesen bzw. Schreiben von einzelnen Bytes, Byte-Arrays oder Strings von der bzw. auf die Socket-Schnittstelle.

Copyright 2006, Michael Zimmer

See Also:
ServerSocket

Constructor Summary
Socket(java.net.Socket socket)
          Konstruktor.
Socket(java.lang.String hostname, int port)
          Konstruktor.
 
Method Summary
 void close()
          Schließt den Socket.
 boolean connect()
          Verbindet das Socket-Objekt zu der entsprechenden Portnummer auf dem entsprechenden Host.
 int dataAvailable()
          Prüfen, ob Daten verfügbar sind.
 int read()
          Lesen eines Zeichens vom Socket.
 int read(byte[] b, int len)
          Lesen von Bytes vom Socket.
 java.lang.String readLine()
          Lesen eines Strings vom Socket.
 void write(byte[] b, int len)
          Schreiben von Bytes auf den Socket.
 void write(int b)
          Schreiben eines Zeichens auf den Socket.
 void write(java.lang.String s)
          Schreiben eines String auf den Socket.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Socket

public Socket(java.lang.String hostname,
              int port)
       throws java.io.IOException
Konstruktor.

Erzeugt einen neuen Socket mit der angegebenen Portnummer zu dem angegebenen Host.

Parameters:
hostname - der Hostname des Servers
port - der Port, auf dem der Server horcht
Throws:
java.io.IOException

Socket

public Socket(java.net.Socket socket)
       throws java.io.IOException
Konstruktor.

Erzeugt einen neuen Socket mit der angegebenen Socket. Wird vom ServerSocket benutzt.

Parameters:
socket - der Socket, mit dem das Socket-Objekt arbeiten soll
Throws:
java.io.IOException
Method Detail

close

public void close()
           throws java.io.IOException
Schließt den Socket.
Nach dem Schließen des Socket ist das Socket-Objekt nicht mehr verbunden.

Throws:
java.io.IOException

connect

public boolean connect()
Verbindet das Socket-Objekt zu der entsprechenden Portnummer auf dem entsprechenden Host.

Ging alles gut, ist das Socket-Objekt verbunden.

Returns:
true, wenn die Verbindung akzeptiert wurde

dataAvailable

public int dataAvailable()
                  throws java.io.IOException
Prüfen, ob Daten verfügbar sind.

Liefert die Anzahl der Bytes, die vom Socket gelesen werden können, ohne beim nächsten Aufruf von read() zu blockieren.

Returns:
Anzahl der verfügbaren Bytes
Throws:
java.io.IOException

read

public int read()
         throws java.io.IOException
Lesen eines Zeichens vom Socket.

Das Zeichen wird als int im Bereich zwischen 0 bis 255 geliefert. Die Methode blockiert, bis Eingabe-Daten verfügbar sind. Im Fehlerfall liefert sie -1 oder erzeugt eine Ausnahme.

Returns:
Das gelesene Byte (0..255) oder -1
Throws:
java.io.IOException

read

public int read(byte[] b,
                int len)
         throws java.io.IOException
Lesen von Bytes vom Socket.

Die Methode blockiert, bis Eingabe-Daten verfügbar sind. Im Fehlerfall liefert sie -1 oder erzeugt eine Ausnahme.

Parameters:
b - Der Buffer
len - Maximale Anzahl der zu lesenden Bytes
Returns:
Die Anzahl der gelesenen Bytes oder -1
Throws:
java.io.IOException

readLine

public java.lang.String readLine()
                          throws java.io.IOException
Lesen eines Strings vom Socket.

Die Methode liest eine Zeile, die durch ein Zeilenendezeichen ('\n' linefeed) abgeschlossen sein muss. Der zurückgegebene String enthält die Zeile ohne Zeilenendezeichen. Die Methode blockiert, bis Eingabe-Daten verfügbar sind. Im Fehlerfall liefert sie -1 oder erzeugt eine Ausnahme.


Returns:
Der String oder null
Throws:
java.io.IOException

write

public void write(int b)
           throws java.io.IOException
Schreiben eines Zeichens auf den Socket.

Diese Methode schreibt ein Byte (die niederwertigen 8 Bit des Parameters b) auf den Socket.

Parameters:
b - Das zu schreibende Byte (0..255)
Throws:
java.io.IOException

write

public void write(byte[] b,
                  int len)
           throws java.io.IOException
Schreiben von Bytes auf den Socket.

Diese Methode schreibt mehrere Bytes auf den Socket.

Parameters:
b - Der Buffer
len - Maximale Anzahl der zu schreibenden Bytes
Throws:
java.io.IOException

write

public void write(java.lang.String s)
           throws java.io.IOException
Schreiben eines String auf den Socket.

Diese Methode schreibt einen String zeichenweise auf den Socket.

Parameters:
s - Der String
Throws:
java.io.IOException